"""
视频帧捕获功能的测试文件
包含测试专用的配置和测试逻辑
"""

from video_cap import capture_frame

# 测试配置 - 特定于当前测试环境的路径设置
DIR = "/files/"
FILE_01 = "%s001.mp4" % DIR
FILE_02 = "%s002.mp4" % DIR


def test_with_camera():
    """测试使用默认摄像头捕获帧"""
    print("=== 测试摄像头捕获 ===")
    capture_frame(video_source=0, interval_seconds=1)


def test_with_video_file():
    """测试从视频文件捕获帧"""
    print("=== 测试视频文件捕获 ===")
    capture_frame(video_source=FILE_01, interval_seconds=1)


def test_with_second_video_file():
    """测试第二个视频文件"""
    print("=== 测试第二个视频文件 ===")
    capture_frame(video_source=FILE_02, interval_seconds=1)


def test_with_custom_settings():
    """测试自定义参数"""
    print("=== 测试自定义设置 ===")
    capture_frame(
        video_source=FILE_01,
        interval_seconds=0.5,
        output_dir='custom_output'
    )


if __name__ == "__main__":
    print("开始执行视频帧捕获测试...")

    # 选择要执行的测试
    print("请选择测试类型:")
    print("1. 摄像头测试")
    print("2. 视频文件测试")
    print("3. 第二个视频文件测试")
    print("4. 自定义设置测试")

    choice = input("请输入选择 (1/2/3/4): ")

    if choice == "1":
        test_with_camera()
    elif choice == "2":
        test_with_video_file()
    elif choice == "3":
        test_with_second_video_file()
    elif choice == "4":
        test_with_custom_settings()
    else:
        print("默认执行视频文件测试")
        test_with_video_file()

    print("测试完成!")